﻿using AutoLoadDLL.Common;
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace AutoLoadDLL.Model
{
    public class MainModel : NotifyObject
    {
        /// <summary>
        /// 当前AutoCad版本号
        /// </summary>
		private string _textCurCAD;

		public string TextCurCAD
        {
			get { return _textCurCAD; }
			set { _textCurCAD = value; this.Register(); }   
		}
        /// <summary>
        /// .NE程序的名字和程序路径
        /// </summary>
        private ObservableCollection<ProgramModel> _programs;

        public ObservableCollection<ProgramModel> Programs
        {
            get { return _programs; }
            set { _programs = value; this.Register(); }
        }

        /// <summary>
        /// .NET程序集文件名
        /// </summary>
        private string _dllFileName;

        public string DllFileName
        {
            get { return _dllFileName; }
            set { _dllFileName = value; this.Register(); }
        }
        /// <summary>
        /// .NET程序集的文件名(不含路径与后缀)
        /// </summary>
        private string _textApp;

        public string TextApp
        {
            get { return _textApp; }
            set { _textApp = value; this.Register(); }
        }
        /// <summary>
        /// 应用程序描述
        /// </summary>
        private string _textAppDesc;

        public string TextAppDesc
        {
            get { return _textAppDesc; }
            set { _textAppDesc = value; this.Register(); }
        }
        /// <summary>
        /// 当前选中的程序（ListView 的）
        /// </summary>
        private ProgramModel _selectedProgram;

        public ProgramModel SelectedProgram
        {
            get { return _selectedProgram; }
            set { _selectedProgram = value; this.Register(); }
        }

    }



	public class ProgramModel : NotifyObject
    {
        /// <summary>
        /// 程序名字
        /// </summary>
        private string _name;

        public string Name
        {
            get { return _name; }
            set { _name = value; this.Register(); }
        }

        /// <summary>
        /// 程序路径
        /// </summary>
        private string _path;

        public string Path
        {
            get { return _path; }
            set { _path = value; this.Register(); }
        }

    }

}
